
# Elasticsearch

> [Elasticsearch](https://www.elastic.co/elasticsearch/) 是一个分布式的、RESTful 的搜索和分析引擎。
> 它提供了一个分布式的、多租户的全文搜索引擎，具有 HTTP Web 界面和无模式（schema-free）的 JSON 文档。
> JSON 文档。


## 安装和设置

```bash
pip install elasticsearch
```

## 检索器

> 在信息检索中，[Okapi BM25](https://en.wikipedia.org/wiki/Okapi_BM25)（BM 是最佳匹配的缩写）是搜索引擎中用于估计文档与给定搜索查询相关性的排名函数。它是基于 20 世纪 70 年代和 80 年代由 Stephen E. Robertson、Karen Sp ä rck Jones 等人开发的概率检索框架。

> 实际排名函数的名称是 BM25。更完整的名称是 Okapi BM25，其中包含了第一个使用它的系统的名称，它是在 20 世纪 80 年代和 90 年代在伦敦城市大学实施的 Okapi 信息检索系统。BM25 及其更新的变体（例如，可以考虑文档结构和锚文本的 BM25F 版本）代表在文档检索中使用的类似 TF-IDF 的检索函数。

查看一个 [使用示例](/docs/modules/data_connection/retrievers/integrations/elastic_search_bm25.html)。

```python
from langchain.retrievers import ElasticSearchBM25Retriever
```

